/*
 * Project Name:hbm-be.
 * File Name:CsSmNoticeMapper.java
 * Package Name:com.hginfo.cs.be.mapper.cs
 * Date:2018年04月24日 下午3:58:49
 * Copyright (c) 2016, hongguaninfo.com All Rights Reserved.
 *
 */
package cn.uce.common.omg.dao.impl;

import cn.uce.base.vo.IcsEmpVo;
import cn.uce.core.db.IBaseDao;
import cn.uce.web.authorg.entity.Emp;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * 公告表: cs_sm_notice。 <br />
 * mapper 层 <br />
 * Date: 2018年04月24日 下午3:58:49 <br />
 *
 * @author you
 * @since V1.0.0
 */

@Repository("omgEmpDao")
public interface IOmgEmpDao extends IBaseDao<Emp, Long> {
    List<IcsEmpVo> getEmpsByCmsBaseOrgCode(String baseOrgCode);

    /**
     * 根据乾坤机构编码和职位编号查询人员集合
     * @param par
     * @return
     */
    List<IcsEmpVo> getEmpsByCmsBaseOrgCodeAndPosi(Map<String, Object> par);

    /**
     * 根据岗位查询仲裁专员
     * @return
     */
    List<IcsEmpVo> getEmpsOfZCZYByPosi(Map<String, Object> par);

    /**
     * 根据岗位查询仲裁领导
     * @return
     */
    List<IcsEmpVo> getEmpsOfZCLDByPosi(Map<String, Object> par);

    /**
     * 查询区总
     * @return
     */
    List<IcsEmpVo> getEmpsOfQz(Map<String, Object> par);

    IcsEmpVo getEmpByCode(String empCode);

    /**
     * 查询总部客服专员
     * @param map
     * @return
     */
    List<IcsEmpVo> getEmpsOfZBKFZY(Map<String, Object> map);

    /**
     * 查询总部客服领导
     * @param map
     * @return
     */
    List<IcsEmpVo> getEmpsOfZBKFLD(Map<String, Object> map);

    /**
     * 根据省中心编码查询区总
     * @param map
     * @return
     */
    List<IcsEmpVo> getQZEmpsBySZXCode(Map<String, Object> map);

    /**
     * 通过角色编码查询人员
     * @param map
     * @return
     */
    List<IcsEmpVo> getEmpsByRoleCode(Map<String, Object> map);


    List<IcsEmpVo> getCccsEmpByRoleCode(@Param(value = "roleCode") String roleCode);

    /**
     * 通过角色编码和所属乾坤机构基准编码查询人员
     * @param map
     * @return
     */
    List<IcsEmpVo> getEmpsByRoleCodeAndCmsOrgBaseCode(Map<String, Object> map);
    
    /**
     * 通过角色编码和所属乾坤机构基准编码查询人员(承包区则查询下面的人)
     * @param map
     * @return
     */
    List<IcsEmpVo> getEmpsByRoleCodeAndCmsOrgBaseCodeForArea(Map<String, Object> map);
    

    /**
     * 根据机构编码查询不是自己的客服人员
     * @param icsEmpVo
     * @return
     */
    List<IcsEmpVo> getEmpsOfNotSelfByRoleCodeAndCmsOrgBaseCode(Map icsEmpVo);
	    /**
     * 根据机构编码查询不是自己的网点客服人员
     * @param icsEmpVo
     * @return
     */
    List<IcsEmpVo> getEmpsOrgNameOfNotSelfByRoleCodeAndCmsOrgBaseCode(Map icsEmpVo);

	List<IcsEmpVo> findEmpByBaseOrgCode(String baseOrgCode);

	List<IcsEmpVo> findEmpByMap(Map<String, Object> map);

	List<IcsEmpVo> getProblemCmsOrgBaseCode(Map<String, Object> map);

	String findOrgByEmpName(Map<String, Object> map);
}
